#ifndef UTIL_H_INCLUDED
#define UTIL_H_INCLUDED
#ifdef __linux__
#include <curses.h>
#define ALT_X KEY_ESC
#else
#include "../include/curses.h"
#endif
#include "../bd/bd.h"
#include "../ui/ui.h"
#include <string.h>

typedef struct{
    char *etiqueta;
    char *fmtnul;
    char *fmtnod;
    void (*print_nodo)(WINDOW * ventana,int posy,char * fmt,int enume,nodo_producto * producto);
    void (*pnodonulo)(WINDOW * Wlista, int posy,char * fmt);
    int (*func)(nodo_producto * dato, int pos); //funcion al press enter
}FUNC_LISTA;

res_busq_p * mostrarListaP(res_busq_p * productos,int (*func)(res_busq_p * dato,int pos));
nodo_producto * mostrarListaP2(nodo_producto * productos,FUNC_LISTA * lista,int tipo);
nodo_usuario * mostrarListaU(nodo_usuario * usuarios,int (*func)(nodo_usuario * dato, int pos));
void print_product2(WINDOW * ventana,int posy,char * fmt,int enume,nodo_producto * producto);
void print_nodopnulo(WINDOW * Wlista, int posy,char * fmt);
void liberar_char_array(char **char_array);
void printProdStat(WINDOW * ventana,int posy,char * fmt,int enume,nodo_producto * producto);
void printProdNulStat(WINDOW * Wlista, int posy,char * fmt);
FECHA * obtenerFecha();

#endif // UTIL_H_INCLUDED
